//
//  NSString+MGAdd.h
//  MGKit
//
//  Created by 赖锋海 on 2018/7/12.
//

#import <Foundation/Foundation.h>

@interface NSString (MGAdd)

+ (NSString *)localizedStringForKey:(NSString *)key value:(nullable NSString *)value table:(nullable NSString *)tableName bundle:(nullable NSBundle *)bundle __attribute__((deprecated("使用localizedStringForKey:tableName:bundleName替换")));

/**
 本地化字体

 @param key 本地化字符
 @param tableName 表名
 @param bundleName 资源名称
 @return NSString
 */
+ (NSString *)localizedStringForKey:(NSString *)key tableName:(nullable NSString *)tableName bundleName:(nullable NSString *)bundleName;

/**
 本地化字体

 @param key 本地化字符
 @param value 默认字符
 @param tableName 表名
 @param bundleName 资源名称
 @return NSString
 */
+ (NSString *)localizedStringForKey:(NSString *)key value:(nullable NSString *)value tableName:(nullable NSString *)tableName bundleName:(nullable NSString *)bundleName;


/**
 时间戳转化为实践

 @param timeInterval 时间戳
 @return 格式化时间
 */
+ (NSString *)stringFromTimeInterval:(NSTimeInterval)timeInterval;

/**
 是否是空字符串(以下情况视为空：1.nil；2.lenght为0)
 
 @param string 文本内容
 @return BOOL
 */
+ (BOOL)isNilString:(NSString *)string;

/**
 替换值为nil的字符串为空字符串，若传入的字符串不为nil或者不为空，原值返回
 
 @param string 要替换的字符串
 @return NSString
 */
+ (NSString *)replaceNull:(NSString *)string;

/**
 格式化大数
 
 @param string 大数字符串
 @return NSString
 */
+ (NSString *)replaceBigNumber:(NSString *)string;

/**
 按照国际标准逗号分隔方式格式化大数
 
 @param number 要格式化的大数
 @return NSString
 */
+ (NSString *)formatBigNumber:(float)number;

/**
 获取URL中的所有参数
 
 @param urlString url地址
 @return NSMutableDictionary
 */
+ (NSMutableDictionary *)getURLParametersWithURLString:(NSString *)urlString;

/**
 获取url中指定key相对应的value
 
 @param key 指定的key
 @param urlString url地址
 @return NSString 若key存在，则返回值，若值不存在，则返回@"", 若key不存在，则返回nil
 */
+ (NSString *)getParameterWithKey:(NSString *)key fromUrlString:(NSString *)urlString;

/**
 替换指定key值的value
 
 @param key key值
 @param value 新value
 @param urlString url
 @return 新的url
 */
+ (NSString *)replaceParameterKey:(NSString *)key withValue:(NSString *)value toUrlString:(NSString *)urlString;

/**
 从url中新加参数
 
 @param params 参数字典
 @param urlString url
 @return 新的url
 */
+ (NSString *)addUrlParameters:(NSDictionary *)params toUrlString:(NSString *)urlString;

/**
 删除指定key的value，生成新的url
 
 @param key key
 @param urlString url
 @return 新的url
 */
+ (NSString *)removeParameterWithKey:(NSString *)key toUrlString:(NSString *)urlString;

+ (NSString *)formatDateStringForChatFromTimeInterval:(NSTimeInterval)timeInterval dateFormatter:(NSDateFormatter *)dateFormatter __attribute__((deprecated("使用stringFromTimeInterval替换")));

@end
